package com.xdj.iot.util.excelUtils;

import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.ss.usermodel.Font;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * created by chongyahhh
 * 2020/2/21
 * excel 辅助生成注解
 * 一般用在 XxxResult 的字段上
 */

@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ExcelColumn {
    /**
     * 该字段出现在 excel 表格的顺序
     * @return
     */
    int order();

    /**
     * 该字段在表头的名称
     * @return
     */
    String description();

    /**
     * 标题字体大小
     * @return
     */
    short titleFontSize() default (short)10;

    /**
     * 标题字体粗细
     * @return
     */
    short titleFontWeight() default HSSFFont.BOLDWEIGHT_NORMAL;

    /**
     * 标题字体颜色
     * @return
     */
    short titleFontColor() default Font.COLOR_NORMAL;

    /**
     * 正文字体大小
     * @return
     */
    short contentFontSize() default (short)10;

    /**
     * 正文字体粗细
     * @return
     */
    short contentFontWeight() default HSSFFont.BOLDWEIGHT_NORMAL;

    /**
     * 正文字体颜色
     * @return
     */
    short contentFontColor() default Font.COLOR_NORMAL;

    /**
     * 是否对这一列上锁
     * @return
     */
    boolean columnLocked() default true;
}
